package controllers

import (
	"github.com/gin-gonic/gin"
	"net/http"
)

type JsonStruct struct {
	Code  int         `json:"code"`  //自定义状态码
	Msg   string      `json:"msg"`   //消息说明
	Data  interface{} `json:"data"`  //数据，可以是任何形式
	Count int64       `json:"count"` //数量，可以处理分页
}

type JsonErrorStruct struct {
	Code int    `json:"code"`
	Msg  string `json:"msg"`
}

// ReturnSuccess 处理成功，将数据返回成json
func ReturnSuccess(c *gin.Context, code int, msg string, data interface{}, count int64) {
	json := &JsonStruct{Code: code, Msg: msg, Data: data, Count: count}
	c.JSON(http.StatusOK, json)
}

// ReturnError 处理失败，将数据返回成json
func ReturnError(c *gin.Context, code int, msg string) {
	json := &JsonErrorStruct{Code: code, Msg: msg}
	c.JSON(http.StatusOK, json)
}
